package com.zed.api.useradmin;

import com.zed.api.domain.currentuser.Account;
import com.zed.api.domain.repository.QueryRepository;

import java.util.List;
import java.util.function.Predicate;

/**
 * 账号仓储
 *
 * @author Zed
 */
public interface AccountQueryRepository extends QueryRepository<String, Account> {

    /**
     * 返回所有用户集合
     *
     * @return {@link List},集合
     */
    List<Account> getAccounts();

    /**
     * 以过滤情况查询用户
     *
     * @param action {@link Predicate}
     * @return {@link List}
     */
    List<Account> getAccounts(Predicate<Account> action);


}
